<?php
// +----------------------------------------------------------------------
// | likeadmin快速开发前后端分离管理后台（PHP版）
// +----------------------------------------------------------------------
// | 欢迎阅读学习系统程序代码，建议反馈是我们前进的动力
// | 开源版本可自由商用，可去除界面版权logo
// | gitee下载：https://gitee.com/likeshop_gitee/likeadmin
// | github下载：https://github.com/likeshop-github/likeadmin
// | 访问官网：https://www.likeadmin.cn
// | likeadmin团队 版权所有 拥有最终解释权
// +----------------------------------------------------------------------
// | author: likeadminTeam
// +----------------------------------------------------------------------

namespace app\common\model;


use app\common\model\BaseModel;
use app\common\model\user\User;

/**
 * 卡号
 * @property $id   id
 * @property $name   名称
 * @property $pwd   密码
 * @property $status   部门状态（0待激活 1激活）
 * @property $create_time   创建时间
 * @property $update_time   修改时间
 * @property $delete_time   删除时间
 * @property $user_id   激活用户
 * @property $merchant_id   归属商户
 * @property $account   卡号
 * @property $price   价格
 * @property $product_id   产品
 * @property $card_type   1 实体卡 2 虚拟卡
 * @property $product_list   
 * @property User   $user   
 * @property Product   $product   
 * @property Merchant   $merchant   
*/

class Card extends BaseModel
{

    protected $name = 'card';


    protected $append = [
        'product_list'
    ];

    public function getProductListAttr($value, $data)
    {
        $arr = [];
        if (!empty($data['product_id'])) {
            $produnctArr = json_decode($data['product_id'], true);
            foreach ($produnctArr as $item) {
                $arr[] = [
                    1=>'碎屏险',
                    2=>'延保',
                    3=>'电池保',
                    4=>'换新险',
                ][$item];
            }
        }
        return $arr;
    }

    public function user()
    {
        return $this->belongsTo(User::class, 'user_id', 'id');
    }

    public function product()
    {
        return $this->belongsTo(Product::class, 'product_id', 'id');
    }

    public function merchant()
    {
        return $this->belongsTo(Merchant::class, 'merchant_id', 'id');
    }


}